Federico Mena Quintero [Thu, 27 Aug 2009 00:10:51 +0000 (19:10 -0500)]
Fix and tighten an assertion
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Federico Mena Quintero [Thu, 27 Aug 2009 00:10:26 +0000 (19:10 -0500)]
Complete the documentation string for _gtk_file_system_model_new()
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Federico Mena Quintero [Wed, 26 Aug 2009 23:52:24 +0000 (18:52 -0500)]
Start with a file array with a resonable preallocated size
g_array_new() doesn't reserve any size by default, so during the initial population
of the file array, we'll do more reallocs than strictly needed. We'll start with
a reasonable preallocated size, in this case the number of files which we can
get in a single chunk out of GIO.
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Federico Mena Quintero [Wed, 26 Aug 2009 23:42:49 +0000 (18:42 -0500)]
Compute the node size only once to avoid the scary macro
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Federico Mena Quintero [Wed, 26 Aug 2009 23:38:03 +0000 (18:38 -0500)]
g_error() as soon as we catch an invalid column type
There's no point in running a GtkFileSystemModel with invalid column types.
This way we can also avoid clearing the memory of the column_types array.
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Benjamin Otte [Wed, 1 Jul 2009 08:32:26 +0000 (10:32 +0200)]
Improve show_and_select_files() function
The previous function enumerated the whole directory and used a lot of
outdated API to decide how to show files.
The new code queries the filesystem model to decide about this.
The now unused old functions were removed.
Benjamin Otte [Thu, 25 Jun 2009 13:05:27 +0000 (15:05 +0200)]
Remove unused error argument from show_and_select_files()
Benjamin Otte [Thu, 25 Jun 2009 11:18:04 +0000 (13:18 +0200)]
Enable the size column in recent files/search
Previously information about file sizes was not available for search
results and recent files, so the column was always hidden. As this
information is now available, we can stop the special handling and use
the same setting as in browse mode.
Benjamin Otte [Wed, 1 Jul 2009 08:20:04 +0000 (10:20 +0200)]
Use the faster accessor function in the sort functions
Use the faster _gtk_file_system_model_get_value() function instead of
gtk_tree_model_get() inside the sort functions. This gives a significant
speed-up when sorting large lists.
In a test case with 40.000 files, the sorting time went from ~5 seconds
to less than 0.5 seconds for my test case. There is 2 significant
problems with gtk_tree_model_get() that cause this:
1) The value is copied, which takes quite a bit of time for strings.
~25% of excessive time or ~1 second in my test
2) The tree model functions need to lookup the interface vfunc. And
gtk_tree_model_get() doesn't do that only once, but multiple times
(verifying column id, getting the actual value, ...)
~75% of excessive time or ~3 seconds in my test
Benjamin Otte [Wed, 24 Jun 2009 21:04:04 +0000 (23:04 +0200)]
Convert recent files to a GtkFileSystemModel
This does to the recent files what the last commit did to the search. It
uses a GtkFileSystemModel and its API niceties to show the recent files.
Benjamin Otte [Wed, 24 Jun 2009 20:43:14 +0000 (22:43 +0200)]
Convert search to use a GtkFileSystemModel
Replace the list model code with the file system model and use all the
file system model API niceties we get from that.
Also adds the function _gtk_file_system_model_add_and_query_file() which
g_file_query_info()'s the file before adding it, so it gets added with
the right information.
Benjamin Otte [Wed, 24 Jun 2009 20:46:21 +0000 (22:46 +0200)]
Don't count the "enter directory name" line as a selected file
Benjamin Otte [Wed, 24 Jun 2009 16:41:03 +0000 (18:41 +0200)]
Add a constructor to filesystem model that does not monitor a directory
This is in preparation for switching search and recent models to use
GtkFileSystemModel
Benjamin Otte [Wed, 24 Jun 2009 14:36:20 +0000 (16:36 +0200)]
Make the filesystem model filter API use a GtkFileFilter
This gets rid of the vfunc API and does exactly what the file chooser
wants.
Benjamin Otte [Tue, 30 Jun 2009 21:45:39 +0000 (23:45 +0200)]
Only query the absolutely necessary attributes
Since the time taken by g_file_enumerate_children() depends a lot on the
attributes that are queried, we query the minimum attributes that need
to be queired to display the file chooser.
In particular, the attributes for loading the icon are ignored, as icons
are loaded on demand (see previous commit).
Benjamin Otte [Tue, 30 Jun 2009 21:33:29 +0000 (23:33 +0200)]
Load icons on-demand
Because loading icons takes a noticable performance, this code loads the
pixbuf on demand and only loads icons for rows that are visible. There
is a few caveats to this:
- The pixbuf cell renderer must report the proer size even if the icon
is not yet loaded. This is achieved by setting a fixed size.
- On theme changes the cahced pixbufs and the cell renderer must be
updated to conform to the new theme.
Benjamin Otte [Tue, 30 Jun 2009 21:17:26 +0000 (23:17 +0200)]
Use the GtkTreeSortable of the filesystem model
Previously, there was a GtkTreeSortModel wrapped around the filesystem
model to make it sortable. As the new implementation implements the
GtkTreeSortable interface, we can use this instead.
Benjamin Otte [Fri, 19 Jun 2009 20:36:26 +0000 (22:36 +0200)]
Clean up code to use the model directly
A lot of code special cases accesses to the tree view for the different
browse modes, which was previously necessary, because the models were
different. Now that they are identical in the first columns, there is no
such need anymore, and the functions don't need to be special cased.
Benjamin Otte [Tue, 30 Jun 2009 20:58:55 +0000 (22:58 +0200)]
Replace the cell data computations
Previously custom functions were used to compute the data passed to the
cell renderers. Now that all this data is saved by the tree models with
compatible nodes, the usual default attribute-to-column mapping can be
used.
With this, caching of the values can happen in the tree model, which
avoids costly lookups of icons or computation of strings. Last but not
least it avoids spurious bugs that could happen when strings changed
without anyone noticing, like the mtime when a new day begins.
Benjamin Otte [Tue, 30 Jun 2009 19:24:52 +0000 (21:24 +0200)]
Consolidate tree models for different browse modes
All tree models in browse mode now share the first 10 column types
containing all the necessary information to display the model on screen.
Therefor it is now easy to just operate on the tree model associated
with the file tree view and in most cases it isn't necessary anymore to
special case the browse modes.
Benjamin Otte [Tue, 30 Jun 2009 19:10:07 +0000 (21:10 +0200)]
Simplify gtk_file_chooser_default_unselect_file()
Benjamin Otte [Wed, 1 Jul 2009 07:48:32 +0000 (09:48 +0200)]
Creating the model no longer fails
So remove the code that checked for failure, as it's not needed anymore.
Benjamin Otte [Tue, 30 Jun 2009 13:15:55 +0000 (15:15 +0200)]
Implement new GtkFileSystemModel
The new model is mostly API-compatible with the old model (minimal
changes were required), but is a lot faster and has a lot of very
desirable features.
- the model does no longer support a tree, just a list of files in a
given directory
- the storage has been moved to a GArray as opposed to a tree
- no more dependency on GtkFileSystem
- columns are managed by the creator of the model, so any number of
nodes can be added as needed. This also makes the API more similar
to GtkListStore.
- Values are filled on demand using a function given when creating the
model.
- The function can decide to let the model cache returned values or
decide to be called again the next time the value is queried.
- implements GtkTreeSortable
- _gtk_file_system_model_get_value() was added to significantly speed
up value access, which is necessary when sorting large models.
Benjamin Otte [Wed, 17 Jun 2009 08:39:26 +0000 (10:39 +0200)]
move GtkFileSystemModel private stuff out of the private header
Xan Lopez [Thu, 15 Oct 2009 06:43:08 +0000 (09:43 +0300)]
Do not assign the parent class twice
G_DEFINE_TYPE already does this for us, no need to do it again in
class_init
https://bugzilla.gnome.org/show_bug.cgi?id=598515
Paolo Borelli [Thu, 15 Oct 2009 11:59:01 +0000 (13:59 +0200)]
Notify the "active" property of the spinner only when needed
Notify spinner::active only if it really changed an other cosmetic fixes
Matej Urbančič [Thu, 15 Oct 2009 12:30:54 +0000 (14:30 +0200)]
Updated Slovenian translation
Matej Urbančič [Thu, 15 Oct 2009 12:27:30 +0000 (14:27 +0200)]
Updated Slovenian translation
Emmanuele Bassi [Thu, 15 Oct 2009 11:25:21 +0000 (12:25 +0100)]
gtk-demo: Remove C99-ism from list_store example
Daniel Nylander [Thu, 15 Oct 2009 07:53:00 +0000 (09:53 +0200)]
Updated Swedish translation
A S Alam [Thu, 15 Oct 2009 07:26:27 +0000 (12:56 +0530)]
Completing translation for Punjabi
Javier Jardón [Thu, 15 Oct 2009 01:47:45 +0000 (03:47 +0200)]
Move documentation to inline comments: GtkToolShell
https://bugzilla.gnome.org/show_bug.cgi?id=597865
Javier Jardón [Wed, 14 Oct 2009 22:25:40 +0000 (00:25 +0200)]
Move documentation from templates to inline comments: GtkAccesible
https://bugzilla.gnome.org/show_bug.cgi?id=597865
Javier Jardón [Wed, 14 Oct 2009 21:47:33 +0000 (23:47 +0200)]
Move documentation from templates to inline comments: GtkActivatable
https://bugzilla.gnome.org/show_bug.cgi?id=597865
Javier Jardón [Wed, 14 Oct 2009 02:09:48 +0000 (04:09 +0200)]
Move documentation from templates to inline comments: GtkAccelGroup
https://bugzilla.gnome.org/show_bug.cgi?id=597865
Bastien Nocera [Wed, 14 Oct 2009 22:11:43 +0000 (23:11 +0100)]
Fix GtkSpinner using style before it's set
Fix a possible division by zero when the spinner
is started before it's realized (eg. before it has a style
set).
https://bugzilla.gnome.org/show_bug.cgi?id=598496
Bastien Nocera [Wed, 14 Oct 2009 21:38:28 +0000 (22:38 +0100)]
Fix property links in GtkSpinner
Leonid Kanter [Wed, 14 Oct 2009 20:32:01 +0000 (23:32 +0300)]
Updated Russian translation
Bastien Nocera [Wed, 14 Oct 2009 17:43:05 +0000 (18:43 +0100)]
Add GtkSpinner::animation-duration style property
Matthias Clasen [Wed, 14 Oct 2009 17:52:52 +0000 (13:52 -0400)]
Add GtkSpinner to the widget gallery
Yes, our documentation setup is wierd and wonderful.
Matthias Clasen [Wed, 14 Oct 2009 17:25:23 +0000 (13:25 -0400)]
Documentation and stylistic fixups
Bastien Nocera [Wed, 14 Oct 2009 16:46:11 +0000 (17:46 +0100)]
Fix "active" property not being notified
And setting it FALSE starting the spinning when it should
stop it.
Matthias Clasen [Wed, 14 Oct 2009 16:30:40 +0000 (12:30 -0400)]
Fix doc build
There was an escaping problem in the newly inlined documentation.
Bastien Nocera [Wed, 14 Oct 2009 15:01:24 +0000 (16:01 +0100)]
Capitalise a11y description for GtkSpinner
Bastien Nocera [Wed, 14 Oct 2009 14:58:05 +0000 (15:58 +0100)]
Update POTFILES.in for spinner widgets
Bastien Nocera [Tue, 21 Jul 2009 01:16:56 +0000 (02:16 +0100)]
Bug 319607 – Add a throbber (activity widget) to GTK+
Add GtkSpinner activity throbber, as well as a cell renderer.
Bastien Nocera [Tue, 13 Oct 2009 12:53:09 +0000 (13:53 +0100)]
Add ability to set a tooltip's image from a GIcon
Makes it easier to implement fallbacks whilst following
theme changes.
https://bugzilla.gnome.org/show_bug.cgi?id=598261
Javier Jardón [Wed, 14 Oct 2009 01:23:47 +0000 (03:23 +0200)]
Move documentation from templates to inline comments: GtkAboutDialog
https://bugzilla.gnome.org/show_bug.cgi?id=597865
Javier Jardón [Mon, 12 Oct 2009 13:59:45 +0000 (15:59 +0200)]
Substitute gtk_widget_ref/unref with g_object_ref/unref
Substitute the use of gtk_widget_ref/unref in documentation examples
and in internal gtk+ code
https://bugzilla.gnome.org/show_bug.cgi?id=598218
Javier Jardón [Mon, 12 Oct 2009 14:09:55 +0000 (16:09 +0200)]
Substitute gtk_style_unref for g_object_unref in documentation example
https://bugzilla.gnome.org/show_bug.cgi?id=598218
Javier Jardón [Wed, 14 Oct 2009 01:02:14 +0000 (03:02 +0200)]
Use g_object_ref/unref instead deprecated gdk_*_ref/unref functions
Substitute deprecated reference counting functions for
g_object_ref/unref in documentation and in internal code
https://bugzilla.gnome.org/show_bug.cgi?id=598217
Tor Lillqvist [Tue, 13 Oct 2009 18:32:04 +0000 (21:32 +0300)]
Don't use XP themes until they work
Javier Jardón [Tue, 13 Oct 2009 15:29:04 +0000 (17:29 +0200)]
Bump version to 2.19.0
Leonid Kanter [Tue, 13 Oct 2009 14:19:26 +0000 (17:19 +0300)]
Updated Russian translation
Leonid Kanter [Tue, 13 Oct 2009 14:00:59 +0000 (17:00 +0300)]
Updated Russian translation
Nguyễn Thái Ngọc Duy [Tue, 13 Oct 2009 13:19:54 +0000 (20:19 +0700)]
po/vi.po: update translation of "Places"
David Planella [Tue, 13 Oct 2009 11:37:44 +0000 (13:37 +0200)]
Updated Catalan translation
David Planella [Mon, 12 Oct 2009 17:32:26 +0000 (19:32 +0200)]
Updated Catalan translation
Javier Jardón [Wed, 23 Sep 2009 14:53:55 +0000 (16:53 +0200)]
Bug 596019 - No accessors for GtkDialog buttons
Add API for GtkDialog to return widgets by response ID.
Added gtk_dialog_get_widget_for_response() to access to all kinds
of buttons with all kinds of responses.
Dumitru Mișu Moldovan [Sun, 11 Oct 2009 11:29:25 +0000 (14:29 +0300)]
Updated Romanian translation
Kjartan Maraas [Sun, 11 Oct 2009 10:36:48 +0000 (12:36 +0200)]
Updated Norwegian bokmål translation
Eitan Isaacson [Tue, 6 Oct 2009 19:28:23 +0000 (12:28 -0700)]
Explicitly set the accessible name of GtkToolButton.
GAIL is not able to retrieve the correct button name alone, so it must be set in gtktoolbutton.c
https://bugzilla.gnome.org/show_bug.cgi?id=597596
Michael Natterer [Sat, 10 Oct 2009 16:26:07 +0000 (18:26 +0200)]
Revert "Remove deprecated GtkContainer function and macros"
This reverts commit
0e3a46915eabaf1bb8fd0559616c0cec92025678.
Javier Jardón [Thu, 8 Oct 2009 15:54:55 +0000 (17:54 +0200)]
Remove deprecated GtkContainer function and macros
Branko Kokanović [Fri, 9 Oct 2009 20:12:26 +0000 (20:12 +0000)]
Updated Serbian translation
Tor Lillqvist [Thu, 8 Oct 2009 12:40:45 +0000 (15:40 +0300)]
Create and install gtk-update-icon-cache.exe.manifest to avoid UAC
Tor Lillqvist [Fri, 9 Oct 2009 11:32:11 +0000 (14:32 +0300)]
Don't include gdkwin32.h when testing Objective-C++
Fixes bug #594644. If somebody actually some day needs to include
gdkwin32.h from an Objective-C++ program something needs to be done.
Matthias Clasen [Fri, 9 Oct 2009 05:08:54 +0000 (07:08 +0200)]
Make selecting the last character work again
This broke when I added link support. git bisect helped to track it
down.
Matej Urbančič [Thu, 8 Oct 2009 12:20:59 +0000 (14:20 +0200)]
Updated Slovenian translation
Timo Jyrinki [Thu, 8 Oct 2009 09:50:35 +0000 (12:50 +0300)]
Updated Finnish translation by Jiri Grönroos.
Tor Lillqvist [Thu, 8 Oct 2009 07:54:22 +0000 (10:54 +0300)]
Fix the GDI+ gdk-pixbuf loader
Should fix bug #552678. Patch by Dominic Lachowicz, based on a clueful
response from Jason Copenhaver on Albeto Ruiz's blog
http://aruiz.typepad.com/siliconisland/2009/08/dear-lazyweb-gtk-need-gdi-help.html
André Gondim [Wed, 7 Oct 2009 10:20:26 +0000 (07:20 -0300)]
Updated Brazilian Portuguese translation.
Reviewed by Rodrigo Flores <mail@rodrigoflores.org>.
Alexander Shopov [Wed, 7 Oct 2009 04:44:35 +0000 (07:44 +0300)]
Updated Bulgarian translation
Tor Lillqvist [Tue, 6 Oct 2009 11:53:22 +0000 (14:53 +0300)]
Don't ignore SIGPIPE unless it exists
Manoj Kumar Giri [Tue, 6 Oct 2009 05:57:46 +0000 (11:27 +0530)]
Updated Oriya Translation
Matthias Clasen [Mon, 5 Oct 2009 21:44:25 +0000 (17:44 -0400)]
Bump version
Matthias Clasen [Mon, 5 Oct 2009 21:42:00 +0000 (17:42 -0400)]
2.18.2
Matthias Clasen [Mon, 5 Oct 2009 20:43:37 +0000 (16:43 -0400)]
Updates
Alexander Larsson [Mon, 5 Oct 2009 20:07:06 +0000 (22:07 +0200)]
Don't request window sizes with zero width or height
Zero width/height is unsupported and will magically be turned into one.
For instance, gtk_widget_size_allocate() will eventually do this magic
on the value stored in widget->allocation.
However, if we don't do this magic conversion early, then the value
returned from gtk_window_compute_configure_request() will not be
comparable with whats stored in widget->allocation. (I.E. they will
differ if width or height are zero).
This is dangerous, as we do such a comparison in gtk_window_move_resize().
Currently a change from e.g. 10x1 (current allocation) to 10x0 (new size)
will be expected to produce a ConfigureNotify, when it actually won't,
thus never thawing the frozen toplevel.
Fixes bug #588059
Alexander Larsson [Mon, 5 Oct 2009 09:39:29 +0000 (11:39 +0200)]
Fix up _gdk_windowing_window_at_pointer coordinate reporting
We need to do a final XQueryWindow to get the coordinates inside the
windows rather than in the parent window.
This fixes bug #597386, "Cannot click buttons more than once...", which
failed due to the grab tracking stuff getting the wrong coordinates as
per the above.
Matthias Clasen [Mon, 5 Oct 2009 02:35:12 +0000 (22:35 -0400)]
Plug a memory leak
Valgrind reported a leak of regions from gdk_window_process_updates_internal.
Takayuki KUSANO [Sat, 3 Oct 2009 09:34:58 +0000 (18:34 +0900)]
Updated Japanese translation
Luca Ferretti [Sat, 3 Oct 2009 07:20:44 +0000 (09:20 +0200)]
Updated Italian translation
Sebastian Dröge [Fri, 2 Oct 2009 05:39:34 +0000 (07:39 +0200)]
Bug 596959 - DirectFB backend compilation broken with changes from 2.18.0 to 2.18.1
Fix compilation of the DirectFB backend after internal API changes of GDK.
Pascal Terjan [Thu, 1 Oct 2009 15:47:22 +0000 (17:47 +0200)]
Call XReconfigureWMWindow with proper screen
Thanks gcc :
gdkwindow-x11.c:1731: warning: passing argument 3 of
'XReconfigureWMWindow' makes integer from pointer without a cast
/usr/include/X11/Xlib.h:1871: note: expected 'int' but argument is of
type 'struct GdkScreen *'
Signed-off-by: Pascal Terjan <pterjan@mandriva.com>
Matthias Clasen [Thu, 1 Oct 2009 15:41:17 +0000 (11:41 -0400)]
Move SIGPIPE suppression to gtk_init and document it
Some people were unhappy with doing it deep inside the lpr print
backend at an unpredictable time, and SIGPIPE is almost never
wanted anyway.
Miloš Popović [Thu, 1 Oct 2009 01:23:06 +0000 (01:23 +0000)]
Updated Serbian translation
Matthias Clasen [Wed, 30 Sep 2009 22:02:46 +0000 (18:02 -0400)]
Bump version
Matthias Clasen [Wed, 30 Sep 2009 22:00:21 +0000 (18:00 -0400)]
2.18.1
Matthias Clasen [Wed, 30 Sep 2009 20:28:02 +0000 (16:28 -0400)]
Updates
Petr Kovar [Wed, 30 Sep 2009 19:23:10 +0000 (21:23 +0200)]
Updated Czech translation
Adrian Johnson [Wed, 30 Sep 2009 16:47:55 +0000 (12:47 -0400)]
Correct the orientation of landscape pages
The convention for landscape pages, and required by PostScript
Language Reference Manual, is for landscape printing to rotate user
space 90 degrees counterclockwise. Part of bug 596423
Adrian Johnson [Wed, 30 Sep 2009 16:46:58 +0000 (12:46 -0400)]
Emit PageOrientation DSC comment into PostScript print output
The PageOrientation DSC comment tells PostScript viewers such as gv or
evince the orientation to use when displaying the page. Part of bug 596423
Marek Kasik [Wed, 30 Sep 2009 16:40:11 +0000 (12:40 -0400)]
Speed up printer listing in the print dialog
Use shorter timeout for connection testing to avoid A 3-6 second
delay before the printers appear. Bug 594643
Gabor Kelemen [Wed, 30 Sep 2009 14:49:55 +0000 (16:49 +0200)]
Updated Hungarian translation
Kristian Rietveld [Wed, 30 Sep 2009 13:07:37 +0000 (15:07 +0200)]
Bug 588449 - DnD doesn't work on GDK/Quartz
Patch from Paul Davis. This gets the basics of drag and drop properly
working on Mac OS X.
Christian Dywan [Wed, 30 Sep 2009 12:45:30 +0000 (08:45 -0400)]
Add a note about tooltip theming
This should help to reduce the amount of confusion about how to
make a tooltip window appear like a tooltip. Bug 596080.
Kristian Rietveld [Wed, 30 Sep 2009 11:09:22 +0000 (13:09 +0200)]
Fix compile warning in defaultvalue test
Kristian Rietveld [Wed, 30 Sep 2009 11:05:33 +0000 (13:05 +0200)]
Ignore certain GtkSettings in defaultvalues unit test
Like the other GtkSettings already registered, these are influenced from
the outside and cannot be properly tested. The defaultvalues test
passes again now.
Kristian Rietveld [Wed, 30 Sep 2009 11:00:28 +0000 (13:00 +0200)]
Use boxed accessors for setting and retrieving cursor property